package cn.edu.scau.cmi.ema.dao;

import java.util.Set;

import org.springframework.dao.DataAccessException;
import cn.edu.scau.cmi.ema.domain.*;
import cn.edu.scau.cmi.ema.domain.base.CmiPagination;

public interface FoodtypeDAO extends JpaDao<Foodtype> {

	public Foodtype findFoodtypeById(Integer id) throws DataAccessException;

	public Foodtype findFoodtypeById(Integer id, int startResult, int maxRows) throws DataAccessException;

	public Set<Foodtype> findFoodtypeByName(String name) throws DataAccessException;

	public Set<Foodtype> findFoodtypeByName(String name, int startResult, int maxRows) throws DataAccessException;

	public Set<Foodtype> findFoodtypeByNameContaining(String name_1) throws DataAccessException;

	public Set<Foodtype> findFoodtypeByNameContaining(String name_1, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodtype> findFoodtypeByDescription(String description) throws DataAccessException;

	public Set<Foodtype> findFoodtypeByDescription(String description, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodtype> findFoodtypeByDescriptionContaining(String description_1) throws DataAccessException;

	public Set<Foodtype> findFoodtypeByDescriptionContaining(String description_1, int startResult, int maxRows)
			throws DataAccessException;

	public Foodtype findFoodtypeByPrimaryKey(Integer id) throws DataAccessException;

	public Foodtype findFoodtypeByPrimaryKey(Integer id, int startResult, int maxRows) throws DataAccessException;

	public Set<Foodtype> findFoodtypesByIds(Set<Integer> ids) throws DataAccessException;

	public Set<Foodtype> findAllFoodtypes() throws DataAccessException;

	public Set<Foodtype> findAllFoodtypes(int startResult, int maxRows) throws DataAccessException;

	public Set<Foodtype> findFoodtypesByParent(Integer foodtypeId, int start, int max);

	public Set<Foodtype> findFoodtypeByCompositeProperities(String sql, int startResult, int maxRows)
			throws DataAccessException;

	public Set<Foodtype> findFoodtypesByDetachedCriteria(CmiPagination page) throws DataAccessException;

	public Set<Integer> findFoodtypeIdsByParent(int rootFoodtypeId) throws DataAccessException;

	public Foodtype findFoodtypeByPhysicalPrimaryKey(String name, Integer parentId) throws DataAccessException;

	public Foodtype findFoodtypeByPhysicalPrimaryKey(String name, Integer parentId, int startResult, int maxRows)
			throws DataAccessException;
}
